home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-03-06 | 2.1 KB | 54 lines | [TEXT/GEOL] |
- Item 3805834 16-Jan-91 08:47
-
- From: MALCOLM@APPLE.COM@INTERNET# Gateway to Internet/BITNET/UUCP
-
- To: MACAPP.TECH$ MacApp Technical
-
- Item forwarded by SPA.DTS to SPA0144
-
- INTERNET# Document Id: <48155@apple.Apple.COM>
-
- ------------------------------------------------------------------------------
-
- Sub: Re: Re[m]: Pascal '9x
-
- If you use AppleLink 6.0, you win! The Reply button works for gatewayed E-mail.
- Otherwise, copy & paste this: malcolm@Apple.COM@INTERNET#
-
- From: malcolm@Apple.COM (Malcolm Slaney)
- References: <6342133@AppleLink.Apple.COM>
- Lines: 25
- Organization: Apple Computer Inc., Cupertino, CA
- Newsgroups: apple.mac.app
- Path: apple!malcolm
- To: macapp.tech$@applelink.apple.com
-
-
- KRIPALU@AppleLink.Apple.COM (Kripalu Ctr, Michael A Latta,PRT) writes:
- > I strongly agree. After several years of Smalltalk I find static owners
- hip
- >a real limitation. I often find myself copying data to support static
- >ownership that would be unneeded in a garbage collection environment. I also
- >acknowledge the difficulty in retrofitting a conventional language with garb
- age
- >collection because tracing all the data strcutures of a conventional language
- >requires a lot of meta data and more complex coding than the Smalltalk
- >equivelent.
-
- There was some work done at Xerox a few years ago that showed that adding
- Garbage Collection (GC) to a conventional language like C wasn't that hard.
- They basically scanned memory looking for anything that might be a pointer.
- Odd numbers in memory, for example, can't possibly be pointers. Also, most
- small integers are probably not addresses. Anyway, they went through all
- of memory, marking any block that had a pointer to it. If you don't have
- a pointer to the block then you can assume it is free.
-
- It worked very well. They described finding several memory leaks in
- conventional UNIX code.
-
- This of course doesn't work if you disguise your pointers. This is before
- my time but I guess Mac programmers were good at adding a few extra flags to
- a 24 bit address.
-
- Malcolm
-